package top.infopub.mgr.bpa.dao;

import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Param;
import top.infopub.dto.bpa.BudgetListDto;
import top.infopub.dto.bpa.BudgetListVo;
import top.infopub.model.bpa.BudgetBatch;
import top.infopub.model.bpa.BudgetBatchExample;

import java.util.List;

public interface BudgetBatchDao {

    Page<BudgetListDto> selectListByDomainWhere(BudgetListVo budgetListVo);

    long countByExample(BudgetBatchExample example);

    int deleteByExample(BudgetBatchExample example);

    int deleteByPrimaryKey(String id);

    int insertBatch(List<BudgetBatch> records);

    int insert(BudgetBatch record);

    int insertSelective(BudgetBatch record);

    BudgetBatch selectOneByExample(BudgetBatchExample example);

    List<BudgetBatch> selectByExamplePaging(@Param("example") BudgetBatchExample example, @Param("offset") int offset, @Param("limit") int limit);

    List<BudgetBatch> selectByExample(BudgetBatchExample example);

    BudgetBatch selectByPrimaryKey(String id);

    int updateByExampleSelective(@Param("record") BudgetBatch record, @Param("example") BudgetBatchExample example);

    int updateByExample(@Param("record") BudgetBatch record, @Param("example") BudgetBatchExample example);

    int updateByPrimaryKeySelective(BudgetBatch record);

    int updateByPrimaryKey(BudgetBatch record);
}